User XXXX has already more than 'max_user_connections' active connections

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Medior Front-end Developer

Sogeti is een organisatie met een goede werksfeer en zo min mogelijk hiërarchische verhoudingen. Ga je bij ons als Medior Front-end Developer aan de slag? Dan werk je dagelijks met collega’s aan de mooiste IT-projecten. Deze snelgroeiende groep collega’s krijgt energie van hun vak en dat merk je op de werkvloer. Onze klantenkring is groot en divers, dat vraagt om flexibiliteit van jou. Tegelijkertijd betekent dit dagelijks nieuwe dingen leren én dat geen werkdag hetzelfde is. Natuurlijk krijg jij de mogelijkheid je te certificeren. We organiseren regelmatig technische Meet-ups en doen we veel aan kennisdeling waarbij iedereen welkom is, zowel

Bekijk vacature »

Ontwikkelaar Identity & Access Management

Dit ga je doen Als Identity & Access Management Ontwikkelaar zorg jij er voor dat studenten, medewerkers en docenten de juiste benodigdheden op het juiste moment kunnen gebruiken; Het juist opslaan van onderzoeksdata en het openbaar beschikbaar stellen van publicaties (Open Access); Studenten, collega's en wetenschappers ondersteunen; Agile en Scrum werken; Technisch Applicatiebeheer; Ontwikkelen in One Identity Manager en VB.NET. Hier ga je werken Als Ontwikkelaar kom je terecht in een hecht team die zich richt op wetenschappelijke informatie en ICT. Jij bent degene die er voor zorgt dat alle informatie, uit diverse onderzoeken, bij de juiste personen terecht komt.

Bekijk vacature »

Frontend Developer - Leeuwarden

Als Frontend Developer bouw jij mee aan het onderwijs van de toekomst! In een scrum team werken met jonge en enthousiaste collega’s, moderne technieken, ruimte voor eigen ontwikkeling en op een proactieve wijze kunnen meewerken aan innovatie binnen het onderwijs. Magister is het state-of-the-art softwarepakket dat scholen in het voortgezet onderwijs op alle fronten ontzorgt. Van leerlingenadministratie tot het ondersteunen van individuele leerlijnen, van toegang tot digitaal lesmateriaal tot het plannen van het lesrooster. In de Magister app bedient Magister ruim 2,5 miljoen gebruikers waarvan, dagelijks meer dan 600.000 unieke. Hiermee is Magister de absolute marktleider in onderwijsland. Wat vragen

Bekijk vacature »

Low-Code Expert/Developer: Power Platform Speciali

Bedrijfsomschrijving Als Low-Code Expert/Developer bij ons innovatieve bedrijf, neem je een cruciale rol op je in de creatie, ondersteuning en implementatie van diverse oplossingen met behulp van het veelzijdige Power Platform. Dit platform omvat Power Apps, Power BI, Power Automate, Power Virtual Agent en Azure Logic Apps. Het Power Platform biedt je de mogelijkheid om klanten te voorzien van naadloze integraties door op maat gemaakte oplossingen te creëren die compatibel zijn met (bijna) alle bestaande software-infrastructuren. Dankzij het uitgebreide scala aan toepassingen, krijg je de kans om als architect en projectleider van je eigen oplossing te fungeren. Dompel jezelf onder

Bekijk vacature »

Traineeship Full Stack .NET Developer

Dit ga je doen Start op 7 augustus 2023 bij de Experis Academy en ontwikkel jezelf tot een gewilde Full Stack .NET Developer. Maar hoe ziet het traineeship eruit en wat kun je verwachten? Periode 1 De eerste 3 maanden volg je fulltime, vanuit huis, een op maat gemaakte training in teamverband. Je leert belangrijke theorie en krijgt kennis van de benodigde vaardigheden en competenties die nodig zijn om de IT-arbeidsmarkt te betreden. Zowel zelfstandig als in teamverband voer je praktijkopdrachten op het gebied van front- en backend development uit. Wat er per week op het programma staat kun je

Bekijk vacature »

PHP Programmeur

Functieomschrijving Vanuit het hoofdkantoor in omgeving Breda, ontwikkel je als PHP programmeur niet alleen webapplicaties, maar ben je verder ook gefocust op het constant inspelen op nieuwe innovaties m.b.t software ontwikkeling. Naast het ontwikkelen van webapplicaties, bouwt deze toffe werkgever ook webshops en websites voor hun opdrachtgevers. Wat ga je doen? Het testen van ontwikkelde applicaties om te zorgen dat ze goed functioneren en voldoen aan de eisen van de klanten; Het ontwerpen en implementeren van webapplicaties met het Symfony framework; Het schrijven van een schone en efficiënte code volgens het Symfony framework; Onderhouden en updaten van bestaande applicaties die

Bekijk vacature »

Intern - Junior PHP ontwikkelaar in fris en jong t

Bedrijfsomschrijving Werk jij graag een in fris, flexibel en jong team? Bij ons ben jij vrij om te bepalen waar jij het liefst werkt en op de vrijdag komen wij gezellig bij elkaar op kantoor. Flexibiliteit en vrijheid zijn bij ons de norm en dat geeft jou de ruimte en energie om het beste uit jezelf te halen! Ons team bestaat uit vijf enthousiaste collega's die jou graag ondersteunen in zowel je persoonlijke als professionele ontwikkeling. Met twee ervaren Senior Developers als mentoren ben jij in goede handen. Wij zien onszelf als een vriendengroep die gezamenlijk werken aan iets moois

Bekijk vacature »

Senior PHP Developer

As a Senior PHP Developer at Coolblue, you ensure that our webshops work as optimal as possible and you choach other colleagues on the hard and soft skills. How do I become a Senior PHP Developer at Coolblue? As a PHP Developer you work together with other development teams to make our webshop work as optimal as possible and to make our customers happy. Although you are a PHP Developer, you are not averse to a little TypeScript or other technologies that might be used. Would you also like to become a PHP Developer at Coolblue? Read below if the

Bekijk vacature »

Front-end Developer Magento 2/Wordpress

Voor het aantrekkelijk houden en steeds vernieuwen van de huidige websites en webshops en het meedenken in de marketing zijn wij per direct op zoek naar een ervaren Front-end developer met gedegen kennis van Magento 2 (webshops) en Wordpress (websites). Wat bieden wij jou Mooi salaris! Meteen op contract bij de opdrachtgever! Gezellig, Kempisch bedrijf! 35 uur per week! Auto van de zaak! Wie ben jij Van een front-end developer verwachten wij: Een afgeronde Bachelor ICT opleiding met profiel ICT & Media Design. Dat je in het bezit bent van een Magento 2 professional front-end developer certificaat; Je hebt ruime

Bekijk vacature »

Senior Front end developer Digital Agency

Functie Jij als Front end developer komt te werken in een van de 8 multidisciplinaire teams binnen de organisatie. Deze teams werken op basis van Scrum agile in 2 wekelijkse sprints. De grootte van de teams varieert van 9-14 collega’s en bestaan altijd uit één of meerdere project managers en een project manager. Samen met je team werk je aan verschillende projecten voor uiteenlopende klanten zoals grote multinationals tot het kleine mkb. De stack waarmee gewerkt wordt is voornamelijk Javascript, ES6, Es.next, HTML, CSS, React.js en Node.js. Wat deze organisatie onderscheid is dat ze echt langdurige partnerships aangaan met hun

Bekijk vacature »

Medior Java developer (fullstack)

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

Typescript Developer / Cloud platform

Dit ga je doen (Door)Ontwikkelen van het cloud platform; (Door)Ontwikkelen van microservices; Bouwen van nieuwe functionaliteiten; Verbeteringen aandragen voor het cloud platform; Sparren met de business. Hier ga je werken Onze opdrachtgever, gevestigd in regio Eindhoven, levert een compleet dienstenpakket op het gebied van IT. Zij pakken verschillende (complexe) vraagstukken van grote organisaties op. De sfeer intern is gezellig en informeel. Men houdt van hard werken maar gezelligheid door middel van een borrel of gezamenlijke lunch komt er veel voor. Als Typescript ontwikkelaar word je onderdeel van het team gericht op de (door)ontwikkeling van hun eigen cloud platform welke wordt

Bekijk vacature »

Database Developer

Functieomschrijving Heb jij ongeveer 3 jaar ervaring als Database Developer met MS SQL of een vergelijkbare database? Wil jij werken voor een gewaardeerde werkgever in regio Tilburg waar jij de tijd en ruimte krijgt jezelf te ontwikkelen? Lees dan snel verder! Hoe ziet jouw takenpakket eruit? Je houdt je bezig met het creëren en bouwen van MS SQL server databases; Je gaat projecten vanaf het begin tot het eind begeleiden. Je sluit aan bij meetings met klanten om hun processen in kaart te brengen. Vervolgens voer jij het project uit en zorgt dat dit zo goed mogelijk verloopt; Je werkt

Bekijk vacature »

Gezocht: .Net ontwikkelaars met een maatschappelij

Bedrijfsomschrijving Zoek jij als medior .Net ontwikkelaar een inspirerende werkplek bij een bedrijf met maatschappelijk verantwoordelijkheidsgevoel? Dan is deze vacature je op het lijf geschreven. De organisatie bestaat ruim 20 jaar en ze ontwikkelen in house applicaties waarmee de zorgsector enorm mee gebaat is. Jouw applicaties worden gebruikt door duizenden gebruikers waardoor je echt een waardevolle bijdrage kan leveren aan de maatschappij. Het bedrijf is zeer innovatief en vindt een goede werk/privé balans belangrijk. Je krijgt alle mogelijkheden om jezelf verder te ontwikkelen, je werktijden in te delen en daarnaast is het ook mogelijk om deels thuis te werken. Het

Bekijk vacature »

Junior Outsystems developer

Functie Als junior Outsystems developer wordt jij onderdeel van een multidisciplinair team van 23 software engineers. Ons team werkt agile en termen als Continuous Integration en Continuous Delivery zijn bij ons dagelijkse koek. Wij werken aan uitdagende en afwisselende projecten met als doel onze klanten een totaal oplossing aan te bieden. Als junior Outsystems developer krijg jij bij ons de kans om jezelf te ontwikkelen naar een volwaardige ervaren en gecertificeerde Outsystems developer. Jij een team met ervaren mensen (10+ ervaring) om je heen. Zo heb jij niet het gevoel dat jij meteen in het diepe wordt gegooid en uiteraard

Bekijk vacature »
Andre

andre

10/07/2006 15:18:00
Quote Anchor link
Beste bezoekers,

op mijn site kunnen mensen plaatjes uploaden, maar als ik meerdere plaatjes achter elkaar upload, krijg ik na +- 6x een plaatje te uploaden, de volgende foutmelding:
Error:
"User "username" has already more than 'max_user_connections' active connections"

Als ik dan gewoon de hoofdpagina wil zien krijg ik dezelfde melding.

Hier de code die ik gebruik om te uploaden.
<script type="text/javascript">

function highlight(field) {
field.focus();
field.select();
}
-->
</script>
<table width="100%" border="1" cellspacing="0" bordercolor="#000000" bgcolor="#CCCCCC">
<tr>
<td width="60%" height="60" valign="top"><p>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
include "includes/filter.php";
//Image Upload Script
//Created by Lappy512
//Part of ImageHostSript.
//See conf_global.php

?>


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
<?php
// $userfile is where the file is on the webserver
$userfile = $HTTP_POST_FILES['imagefile']['tmp_name'];

// $userfile is original file name
$userfile_name = $HTTP_POST_FILES['imagefile']['name'];

// $userfile_size is size in bytes
$userfile_size = $HTTP_POST_FILES['imagefile']['size'];

// $userfile_type is mime type e.g. image/gif
$userfile_type = $HTTP_POST_FILES['imagefile']['type'];

// $comments are the comments, but we need logic if there aren't comments.
if($_POST['comments'])
{

    $comments = $_POST['comments'];
    if (get_magic_quotes_gpc() == 0)
    {

        $comments = addslashes($comments);
    }

    $comments = nl2br($comments);
}

else
{
    //they didn't comment
    $comments = 'Geen Commentaar bij dit plaatje';
}


// $url are is the URL, but we need logic if there isn't one.
if($_POST['url'])
{

    $url = $_POST['url'];
    if (get_magic_quotes_gpc() == 0)
    {

        $url = addslashes($url);
    }

    $url = nl2br($url);
}

else
{
    //they didn't comment
    $url = 'http://www.pornholio.be';
}


//Sporadic MIME-TYPES?
if ($userfile_type == 'image/x-png')
{

    $userfile_type = 'image/png';
}

if ($userfile_type == 'image/pjpeg')
{

    $userfile_type = 'image/jpeg';
}


// $userfile_error is any error encountered
$userfile_error = $HTTP_POST_FILES['imagefile']['error'];

//PHP 4.2.0+ code ONLY. This code will not work with PHP 4.1 or less
if ($userfile_error > 0)
{

    echo 'Problem: ';
    switch($userfile_error)
    {
        case
1: echo 'File exceeded Maximum upload filesize'; break;
        case
2: echo 'File exceeded Maximum upload filesize'; break;
        case
3: echo 'File partially uploaded'; break;
        case
4: echo 'No File Uploaded'; break;
    }

    exit;
}

//end of code for 4.2.0+

switch($userfile_type)
{
    case
'image/gif':
        break;
    case
'image/png':
        break;
    case
'image/jpeg':
        break;
    case
'image/bmp':
        echo "BMP File format not supported. Please upload a JPEG, PNG, or a GIF. Thanks. ";
        exit;
    default:

        echo "Problem: File is not a supported image filetype. Please upload a JPEG, PNG, or a GIF. Thanks. ";
        echo "<br> your file has a MIME-TYPE of $userfile_type";
        exit;
        break;
}

//Lets try connecting to mySQL
@ $db = mysql_pconnect($mysql['host'], $mysql['user'], $mysql['pass']);
//IT"S NOT WORKING!
if (!$db)
{

    die("error");
    mysql_close();
}

mysql_select_db($mysql['db']);

//We need to get a date for our Database
$date = time();

//Put the data there!
$query = "INSERT INTO `images` ( `id` , `size` , `downloads` , `lastuse` , `type` , `comments`, `url`, `ip` , `report` ) VALUES ('', " . $userfile_size . ", '0', " . $date . ", " . '\'' . $userfile_type . '\'' . ", " . '\'' . $comments . '\'' . ", " . '\'' . $url . '\'' . ", " . '\'' . $_SERVER['REMOTE_ADDR'] . '\'' . " , '' );";

//QUERY!
$result = mysql_query($query);
if (!$result)
{

    die("MySQL insert error");
    mysql_close();
}


$userfile_name = mysql_insert_id();

//put the file where we want it
$upfile = './uploads/' . $userfile_name;
//need PHP 4.0.3
if(is_uploaded_file($userfile))
{

    if (!move_uploaded_file($userfile, $upfile))
    {

        echo 'Problem: Could not move file to destination directory';
        exit;
        mysql_close();
    }
}

else
{
    echo 'Problem: Possible File upload attack. Filename: '.$userfile_name;
    exit;
    mysql_close();
}


echo '<br>Het bestand is succesvol geupload<br/><br/>';

//get current stats
$query = "SELECT * FROM `stat_cache`";

$result = mysql_query($query);

if (!$result)
{

    die("MySQL Select error");
    mysql_close();
}

$stat = mysql_fetch_array($result);

//update statistics
//files update

$files = $stat['files'] + 1;
$query = "UPDATE `stat_cache` SET files=" . $files . " WHERE 1";
$result = mysql_query($query);
if (!$result)
{

    die("MySQL Update error");
    mysql_close();
}

//space update
$totalspace = $stat['space'] + $userfile_size;
$query = "UPDATE `stat_cache` SET space=" . $totalspace . " WHERE 1";
$result = mysql_query($query);
if (!$result)
{

    die("MySQL Update error");
    mysql_close();
}



//1337 h4x0rs can resize everything, even though we can't outputz0rz to everything.
//Resample it now!
// The file


$filename = $upfile;
$thumb = './uploads/' . 'thumb_' . $userfile_name;
// Set a maximum height and width
$width = 150;
$height = 150;

// Get new dimensions
list($width_orig, $height_orig) = getimagesize($filename);
if(($width_orig < $width) && ($height_orig < $height))
{

    $width = $width_orig;
    $height = $height_orig;
}

else
{
    if ($width && ($width_orig < $height_orig)) {
       $width = ($height / $height_orig) * $width_orig;
    }
else {
       $height = ($width / $width_orig) * $height_orig;
    }
}

// Resample
$image_p = imagecreatetruecolor($width, $height);
if($userfile_type == 'image/jpeg')
{

    $image = imagecreatefromjpeg($filename);
}

if($userfile_type == 'image/png')
{

    $image = imagecreatefrompng($filename);
}

if($userfile_type == 'image/gif')
{

    $image = imagecreatefromgif($filename);
}

imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);

// Output
if($userfile_type == 'image/jpeg')
{

    imagejpeg($image_p, $thumb);
}

if($userfile_type == 'image/png' or $userfile_type == 'image/gif')
{

    imagepng($image_p, $thumb);
    $userfile_type = 'image/png';
}


$userfile_size = filesize($upfile);
$id = $userfile_name;

//Put the data there!
$query = "INSERT INTO `thumbs` ( `id` , `size` , `downloads` , `lastuse` , `type` )VALUES ('$id', '$userfile_size', '0', '$date', '$userfile_type');";

//QUERY!
$result = mysql_query($query);

if (!$result)
{

    die("MySQL insert error 2 " . mysql_error());
    mysql_close();
}


//get current stats
$query = "SELECT * FROM `stat_cache`";

$result = mysql_query($query);

if (!$result)
{

    die("MySQL Select error");
    mysql_close();
}

$stat = mysql_fetch_array($result);
//update statistics
//space update

$totalspace = $stat['space'] + $userfile_size;
$query = "UPDATE `stat_cache` SET space=" . $totalspace . " WHERE 1";
$result = mysql_query($query);
if (!$result)
{

    die("MySQL Update error");
    mysql_close();
}

?>


<FORM action="../nowhere" method="post" class="table_decoration">
<b><a href="
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php $siteurl; ?>
">Click hier om nog een foto te uploaden</a></b><br>
<br/>HTML:<br>
<input onclick="highlight(this);" style="width: 500px;" size="80" value="<a href='
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $siteurl; ?>
viewer.php?id=
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $id; ?>
'><img src='
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $siteurl; ?>
thumb/
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $id; ?>
.jpeg'></a>">
<br/>BBCODE:<br>
<input onclick="highlight(this);" style="width: 500px;" size="80" value="[url=
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $siteurl; ?>
viewer.php?id=
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $id; ?>
]Afbeelding[/url]">
<br/>Thumbnail for Forums(1):<br>
<input onclick="highlight(this);" style="width: 500px;" size="80" value="[URL=
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $siteurl; ?>
viewer.php?id=
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $id; ?>
]Afbeelding
 
PHP hulp

PHP hulp

25/11/2024 12:29:30
 
Arjan Kapteijn

Arjan Kapteijn

10/07/2006 15:24:00
Quote Anchor link
Okay, kan jij ondertussen voor mij een samenvatting van de koran schrijven? We willen je best helpen maar zitten hier niet om boekwerken te debuggen...

Zoiezo zou je kunnen beginnen door het script eens om te zetten naar de huidige standaard. $HTTP_POST_FILES kan je bijv. vervangen door $_FILES(). En je query's kunnen wat mij betreft ook wel wat netter en efficienter.

Overigens heeft jou probleem weinig met het script te maken. Je mysql heeft een maximaal aantal connecties wat hij tegelijkertijd wilt verwerken van één gebruiker. Verhoog die en je probleem is opgelost.
 
Erik Rijk

Erik Rijk

10/07/2006 15:38:00
Quote Anchor link
en waarom sluit je je mysql connectie zo vaak als je hem in hetzelfde script toch blijft gebruiken?
 
Andre

andre

10/07/2006 15:39:00
Quote Anchor link
He Arjan,

Sorry voor de rare post. Ik drukte per ongeluk op enter en toen stond ie er.

Ik heb hem een beetje uitgekleed en heb dat $_FILES() nu ook gebruikt. Ben nog niet zo heel lang bezig met php. Ben bezig met een cursus en heb dit script van internet gehaald en een beetje aangepast.

Ik host mijn website bij een derde en kan de max_users niet aanpassen. Ik denk zelf dat het iets heeft te maken met het feit dat ik de connectie na het uploaden moet verbreken.

Ik hoop dat er een goede oplossing gevonden kan worden.

Hierbij het uitgekledescript:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
<?php
// $userfile is where the file is on the webserver
$userfile = $_FILES()['imagefile']['tmp_name'];

// $userfile is original file name
$userfile_name = $_FILES()['imagefile']['name'];

// $userfile_size is size in bytes
$userfile_size = $_FILES()['imagefile']['size'];

// $userfile_type is mime type e.g. image/gif
$userfile_type = $_FILES()['imagefile']['type'];

// $comments are the comments, but we need logic if there aren't comments.
if($_POST['comments'])
{

    $comments = $_POST['comments'];
    if (get_magic_quotes_gpc() == 0)
    {

        $comments = addslashes($comments);
    }

    $comments = nl2br($comments);
}

else
{
    //they didn't comment
    $comments = 'Geen Commentaar bij dit plaatje';
}


// $url are is the URL, but we need logic if there isn't one.
if($_POST['url'])
{

    $url = $_POST['url'];
    if (get_magic_quotes_gpc() == 0)
    {

        $url = addslashes($url);
    }

    $url = nl2br($url);
}

else
{
    //they didn't comment
    $url = 'http://www.pornholio.be';
}


//Sporadic MIME-TYPES?
if ($userfile_type == 'image/x-png')
{

    $userfile_type = 'image/png';
}

if ($userfile_type == 'image/pjpeg')
{

    $userfile_type = 'image/jpeg';
}


// $userfile_error is any error encountered
$userfile_error = $_FILES()['imagefile']['error'];

//PHP 4.2.0+ code ONLY. This code will not work with PHP 4.1 or less
if ($userfile_error > 0)
{

    echo 'Problem: ';
    switch($userfile_error)
    {
        case
1: echo 'File exceeded Maximum upload filesize'; break;
        case
2: echo 'File exceeded Maximum upload filesize'; break;
        case
3: echo 'File partially uploaded'; break;
        case
4: echo 'No File Uploaded'; break;
    }

    exit;
}

//end of code for 4.2.0+

switch($userfile_type)
{
    case
'image/gif':
        break;
    case
'image/png':
        break;
    case
'image/jpeg':
        break;
    case
'image/bmp':
        echo "BMP File format not supported. Please upload a JPEG, PNG, or a GIF. Thanks. ";
        exit;
    default:

        echo "Problem: File is not a supported image filetype. Please upload a JPEG, PNG, or a GIF. Thanks. ";
        echo "<br> your file has a MIME-TYPE of $userfile_type";
        exit;
        break;
}

//Lets try connecting to mySQL
@ $db = mysql_pconnect($mysql['host'], $mysql['user'], $mysql['pass']);
//IT"S NOT WORKING!
if (!$db)
{

    die("error");
    mysql_close();
}

mysql_select_db($mysql['db']);

//We need to get a date for our Database
$date = time();

//Put the data there!
$query = "INSERT INTO `images` ( `id` , `size` , `downloads` , `lastuse` , `type` , `comments`, `url`, `ip` , `report` ) VALUES ('', " . $userfile_size . ", '0', " . $date . ", " . '\'' . $userfile_type . '\'' . ", " . '\'' . $comments . '\'' . ", " . '\'' . $url . '\'' . ", " . '\'' . $_SERVER['REMOTE_ADDR'] . '\'' . " , '' );";

//QUERY!
$result = mysql_query($query);
if (!$result)
{

    die("MySQL insert error");
    mysql_close();
}


$userfile_name = mysql_insert_id();

//put the file where we want it
$upfile = './uploads/' . $userfile_name;
//need PHP 4.0.3
if(is_uploaded_file($userfile))
{

    if (!move_uploaded_file($userfile, $upfile))
    {

        echo 'Problem: Could not move file to destination directory';
        exit;
        mysql_close();
    }
}

else
{
    echo 'Problem: Possible File upload attack. Filename: '.$userfile_name;
    exit;
    mysql_close();
}


echo '<br>Het bestand is succesvol geupload<br/><br/>';

//get current stats
$query = "SELECT * FROM `stat_cache`";

$result = mysql_query($query);

if (!$result)
{

    die("MySQL Select error");
    mysql_close();
}

$stat = mysql_fetch_array($result);

//update statistics
//files update

$files = $stat['files'] + 1;
$query = "UPDATE `stat_cache` SET files=" . $files . " WHERE 1";
$result = mysql_query($query);
if (!$result)
{

    die("MySQL Update error");
    mysql_close();
}

//space update
$totalspace = $stat['space'] + $userfile_size;
$query = "UPDATE `stat_cache` SET space=" . $totalspace . " WHERE 1";
$result = mysql_query($query);
if (!$result)
{

    die("MySQL Update error");
    mysql_close();
}



//1337 h4x0rs can resize everything, even though we can't outputz0rz to everything.
//Resample it now!
// The file


$filename = $upfile;
$thumb = './uploads/' . 'thumb_' . $userfile_name;
// Set a maximum height and width
$width = 150;
$height = 150;

// Get new dimensions
list($width_orig, $height_orig) = getimagesize($filename);
if(($width_orig < $width) && ($height_orig < $height))
{

    $width = $width_orig;
    $height = $height_orig;
}

else
{
    if ($width && ($width_orig < $height_orig)) {
       $width = ($height / $height_orig) * $width_orig;
    }
else {
       $height = ($width / $width_orig) * $height_orig;
    }
}

// Resample
$image_p = imagecreatetruecolor($width, $height);
if($userfile_type == 'image/jpeg')
{

    $image = imagecreatefromjpeg($filename);
}

if($userfile_type == 'image/png')
{

    $image = imagecreatefrompng($filename);
}

if($userfile_type == 'image/gif')
{

    $image = imagecreatefromgif($filename);
}

imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);

// Output
if($userfile_type == 'image/jpeg')
{

    imagejpeg($image_p, $thumb);
}

if($userfile_type == 'image/png' or $userfile_type == 'image/gif')
{

    imagepng($image_p, $thumb);
    $userfile_type = 'image/png';
}


$userfile_size = filesize($upfile);
$id = $userfile_name;

//Put the data there!
$query = "INSERT INTO `thumbs` ( `id` , `size` , `downloads` , `lastuse` , `type` )VALUES ('$id', '$userfile_size', '0', '$date', '$userfile_type');";

//QUERY!
$result = mysql_query($query);

if (!$result)
{

    die("MySQL insert error 2 " . mysql_error());
    mysql_close();
}


//get current stats
$query = "SELECT * FROM `stat_cache`";

$result = mysql_query($query);

if (!$result)
{

    die("MySQL Select error");
    mysql_close();
}

$stat = mysql_fetch_array($result);
//update statistics
//space update

$totalspace = $stat['space'] + $userfile_size;
$query = "UPDATE `stat_cache` SET space=" . $totalspace . " WHERE 1";
$result = mysql_query($query);
if (!$result)
{

    die("MySQL Update error");
    mysql_close();
}

?>
 
Arjan Kapteijn

Arjan Kapteijn

10/07/2006 15:52:00
Quote Anchor link
Je gebruikt mysql_pconnect(), die doet bijna hetzelfde als mysql_connect(), met twee grote verschillen.

Ten eerste, wanneer je verbinding maakt, zal de functie eerst proberen een (persistente) link te openen die al open staat met dezelfde host, username en password. Als er een gevonden wordt zal een identifier ervoor worden teruggegeven, in plaats van een nieuwe verbinding te openen.

Ten tweede, de verbinding met de SQL server zal niet worden gesloten wanneer de executie van het script klaar is. In plaats daarvan zal de link open blijven voor toekomstig gebruik (mysql_close() zal geen links sluiten die werden gemaakt door mysql_pconnect()).

mysql_connect() gebruiken dus :).l
 
Roy Bongers

Roy Bongers

10/07/2006 15:55:00
Quote Anchor link
:( Je bent me net voor. Ik wou presies 't zelfde posten.
 
Frank -

Frank -

10/07/2006 17:53:00
Quote Anchor link
Offtopic: Gooi die vieze en volkomen overbodige backtics ` bij het grofvuil. Die horen absoluut niet thuis in een goede en nette SQL-query.

Je wordt dan ook gedwongen om correcte tabel- en kolomnamen te gebruiken, daar kun je in de toekomst nog een hoop voordeel van hebben.

Nooit meer backtics in je queries zetten!
 
Andre

andre

15/07/2006 13:00:00
Quote Anchor link
Beste allemaal,

Bedankt voor de hulp. Het probleem is opgelost. @frank
Je hebt helemaal gelijk, maar ik wil voor de rest niets meer aan die website doen. Ik heb een nieuw project waar ik mee aan de slag ga en voor deze website ga ik gewoon mensen inhuren die het goed doen. Ben gewoon een beginneling en heb helemaal de kennis niet. Wilde gewoon even stoeien met PHP en wat ik tot nu toe heb opgezet is voldoende. Bedankt allemaal
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.